Re: [SQL] insertable views - not copy-able ? - Mailing list pgsql-hackers

From Herouth Maoz
Subject Re: [SQL] insertable views - not copy-able ?
Date
Msg-id l03130302b43220c310b0@[147.233.159.109]
Whole thread Raw
In response to insertable views - not copy-able ?  (Daniel Péder <dpeder@infoset.cz>)
List pgsql-hackers
At 22:56 +0200 on 17/10/1999, Daniel Péder wrote:


> what about this:
> ( it would be nice to have it working, specially for copying values from
>files into table with default fields, having the default fields doing
>their job or initialising tables using reduced set of columns )
>
> mydb=> create sequence MYSEQ;
> CREATE
> mydb=> create table MYTAB ( ID int4 default nextval('MYSEQ'), NAME text );
> CREATE
> mydb=> create view MYVIEW as select name from MYTAB;
> CREATE
> mydb=> copy MYVIEW from stdin;

Seems this view is neither insertable nor copyable. To make it insertable,
you have to define a rule, you know.

In any case, I don't think it would work for copy - the rule I mean.

IMO, if you want to copy data and have defaults work, you copy the data
into a temporary table with only the necessary fields, and then issue an
insert:

CREATE TEMP TABLE tmp_tab ( name text );
COPY tmp_tab FROM stdin;
jim
john
jack
\.
INSERT INTO mytab (name) SELECT name FROM tmp_tab;
DROP TABLE tmp_tab;

Herouth

--
Herouth Maoz, Internet developer.
Open University of Israel - Telem project
http://telem.openu.ac.il/~herutma




pgsql-hackers by date:

Previous
From: Peter Mount
Date:
Subject: RE: [HACKERS] Re: New developer globe
Next
From: Bruce Momjian
Date:
Subject: Readline use in trouble?